1. Field of the Technical Invention
The present invention relates to markup language processing. More particularly, the present invention relates to managing user interface layout instructions and executable logic in a markup language driven application.
2. Description of the Related Art
Traditional graphical user interface (GUI) driven applications mix presentation and application logic in a single distribution. In contrast, where an application is to be distributed about a computer communications network, generally the GUI interface elements and computing logic can remain separate with the GUI interface having a markup language definition, and the logic having an executable or interpretable form which can be accessed through an externally callable interface. In some instances, the logic can be mixed with the markup language definition in the form of embedded scripts to be processed either in the client computing device or in the application server.
To force a separation of the presentation and logic layers as is preferred among many contemporary computer scientists, server page technologies have become the preferred vehicle for multi-tier applications. Server page technologies release the client tier from the responsibility of processing logic for rendering the presentation layer. Moreover, server pages largely separate presentation layer logic from the static elements of the presentation layer so that user interface designers can perform changes to the static elements of the presentation layer without breaching the integrity of the programmatic elements of the presentation layer.
Typical server page technologies permit a mixing of statically defined user interface elements and programmatic scripts in a single document. The programmatic scripts can be processed server-side to produce a translated presentation layer document. The translated presentation layer document can be delivered to the client side where the translated presentation layer document can be rendered to a user interface. Notably, in addition to embedded programmatic scripts, the server page further can include macro references to externally defined programmatic logic. In this way, the complexity of the programmatic logic can be hidden from the view of the user interface designer charged with the development and maintenance of the server page.
As it will be apparent to the skilled artisan, application interface layout and program execution remain separate functions requiring separate languages and sometimes files—though in some cases both can be mixed within the same document. Consequently, maintaining an application of this sort can be cumbersome and expensive as different experts are required to maintain different portions of an application. Markup language specialists mostly are equipped to manage the user interface definition, while computer programmers maintain the logic. To the extent that the rapid development of an application is desired, there presently is no unified layout and scripting language that provides a simple vehicle for developing both the user interface and program logic of an application through the use of a single programming language by a single expert.